Skip to main content

Helm Chart Deployment

This guide provides step-by-step instructions on how to deploy SyncNow using Helm. The Helm chart simplifies the deployment and configuration of SyncNow on a Kubernetes cluster.

Prerequisites

Before deploying SyncNow with Helm, ensure you have the following:

  • A running Kubernetes cluster
  • Helm installed (Installation Guide)
  • Access to a container registry hosting the SyncNow image

Installing the Helm Chart

  1. Add the SyncNow Helm repository (if applicable):

    helm repo add syncnow-repo https://repo.syncnow.io/repository/syncnow-helm-prod-local/
    helm repo update
  2. Install the chart using default values:

    helm install syncnow syncnow-repo/syncnow
  3. To customize the installation, create a values.yaml file and override default settings:

    replicaCount: 2
    image:
    repository: repo.syncnow.io/syncnowserver
    tag: "latest"
    pullPolicy: IfNotPresent
    env:
    LOGGING_LOGLEVEL_DEFAULT: "Information"
    SETTINGS_DATABASECONFIGURATION_SERVER: "db.syncnow.local"
    SETTINGS_DATABASECONFIGURATION_PORT: 5432
    ingress:
    enabled: true
    hosts:
    - host: syncnow.example.com
    paths:
    - path: /
    pathType: ImplementationSpecific
  4. Deploy with custom values:

    helm install syncnow syncnow-repo/syncnow -f values.yaml

Configuration Options

Below are key configurable options available in values.yaml:

Replica Count

Sets the number of replicas for the application:

replicaCount: 1

Image Configuration

Defines the container image settings:

image:
repository: repo-images.syncnow.io/syncnowserver
pullPolicy: IfNotPresent
tag: "latest"

Environment Variables

Refer to Environment Variables Configuration Parameters for all environment variables.

Configures SyncNow application settings for example:

env:
LOGGING_LOGLEVEL_DEFAULT: "Warning"
SETTINGS_DATABASECONFIGURATION_SERVER: "db-server"
SETTINGS_DATABASECONFIGURATION_PORT: 5432

Service Configuration

Defines the service type and ports:

service:
type: ClusterIP
port: 5030

Ingress Configuration

If you want to expose SyncNow externally, enable and configure ingress:

ingress:
enabled: true
hosts:
- host: syncnow.example.com
paths:
- path: /
pathType: ImplementationSpecific

Resource Limits

Configures resource allocation:

resources:
limits:
cpu: 500m
memory: 512Mi
requests:
cpu: 250m
memory: 256Mi

Upgrading SyncNow

To upgrade the deployment when a new chart version is available:

helm upgrade syncnow syncnow-repo/syncnow -f values.yaml

Uninstalling SyncNow

To remove SyncNow from the cluster:

helm uninstall syncnow

This will delete all resources associated with the release.